#include<cairo.h>


int
main(int argc, char* argv[]){
  cairo_surface_t *sfc = cairo_image_surface_create(CAIRO_FORMAT_ARGB32, 1600, 800);
  cairo_t * cr = cairo_create(sfc);

  // 设置线宽为100pixel
  cairo_set_line_width(cr, 100);

  // 绘制矩形
  cairo_rectangle(cr, 800,200, 600, 400);

  // 与矩形上边对齐绘制一段直线
  cairo_line_to(cr, 0,200);

  // 保留路径画线
  cairo_stroke_preserve(cr);

  // 改变《源》颜色
  cairo_set_source_rgb(cr, 1, 0, 0);

  // 填充路径
  cairo_fill_preserve(cr);

  cairo_surface_write_to_png(sfc, "c.png");
  // 从图中可以看出，填充路径“内部”是路径以内，与设置的线宽无关。
  // 当线宽为100pixel时，先画线再填充，矩形路径以内50pixel的“半条线”也会被填充。

  return 0;
}//main

